package cn.ht.bootdemo.mybatisplusDemo.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.util.Date;

@Data
public class User {

    /*
        AUTO - 自动增长
        ID_WORKER - mp自带策略（默认），生成一个19位的值，适用于Long类型
        ID_WORKER_STR - mp自带策略，生成一个19位值，使用字符串
        INPUT - 手动设置
        NONE - 无，虚手动设置
        UUID - 随机数（不适用于排序）
     */
    @TableId
    private Long id;
    private String name;
    private Integer age;
    private String email;

    /** 此注解表示添加时自动调用填充方法 */
    @TableField(fill = FieldFill.INSERT)
    private Date addTime;

    /** 同上，添加或者修改时自动调用填充方法 */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;

    /** 此标记表示实现乐观锁，每次数据改动时，此标记的值+1 */
    @Version
    @TableField(fill = FieldFill.INSERT)
    private Integer version;

    /**删除标记（默认 0-未删除，1-已删除）*/
    @TableLogic
    private Integer deleteFlag;
}
